﻿
namespace MyFurion.Model
{
    /// <summary>
    /// 请求审计日志
    /// </summary>
    [SugarTable("Sys_RequestLog")]
    [Tenant(0)]
    public class RequestLog:BaseEntity
    {
        /// <summary>
        /// 是否执行成功
        /// </summary>
        [SugarColumn(ColumnDescription = "是否执行成功")]
        public bool Success { get; set; }
        /// <summary>
        /// 具体消息
        /// </summary>
        [SugarColumn(IsNullable = true, ColumnDataType = CommonConst.DB_STRING_MAX, ColumnDescription = "具体消息")]
        public string Message { get; set; }
        /// <summary>
        /// IP
        /// </summary>
        [SugarColumn(Length = 100, IsNullable = true, ColumnDescription = "ip地址")]
        public string Ip { get; set; }
        /// <summary>
        /// 地址
        /// </summary>
        [SugarColumn(Length = 1024, IsNullable = true, ColumnDescription = "地址")]
        public string Location { get; set; }
        /// <summary>
        /// 浏览器
        /// </summary>
        [SugarColumn(Length = 100, IsNullable = true, ColumnDescription = "浏览器")]
        public string Browser { get; set; }
        /// <summary>
        /// 操作系统
        /// </summary>
        [SugarColumn(Length = 100, IsNullable = true, ColumnDescription = "操作系统")]
        public string OsSystem { get; set; }
        /// <summary>
        /// 请求地址
        /// </summary>
        [SugarColumn(Length = 100, IsNullable = true, ColumnDescription = "请求地址")]
        public string Url { get; set; }
        /// <summary>
        /// 类名称
        /// </summary>
        [SugarColumn(Length = 100, IsNullable = true, ColumnDescription = "类名称")]
        public string ClassName { get; set; }
        /// <summary>
        /// 方法名称
        /// </summary>
        [SugarColumn(Length = 100, IsNullable = true, ColumnDescription = "方法名称")]
        public string MethodName { get; set; }
        /// <summary>
        /// 请求方式（GET POST PUT DELETE)
        /// </summary>
        [SugarColumn(Length = 100, IsNullable = true, ColumnDescription = "请求方式")]
        public string ReqMethod { get; set; }
        /// <summary>
        /// 请求参数
        /// </summary>
        [SugarColumn(IsNullable = true, ColumnDataType = CommonConst.DB_STRING_MAX, ColumnDescription = "请求参数")]
        public string Param { get; set; }
        /// <summary>
        /// 返回结果
        /// </summary>
        [SugarColumn(IsNullable = true, ColumnDataType = CommonConst.DB_STRING_MAX, ColumnDescription = "返回结果")]
        public string Result { get; set; }
        /// <summary>
        /// 耗时（毫秒）
        /// </summary>
        [SugarColumn(ColumnDescription = " 耗时（毫秒）")]
        public long ElapsedTime { get; set; }
    }
}
